assume cs:code
data segment
  db 'Welcome to masm!',0
data ends
code segment
  start: mov dh,8
         mov dl,3
         mov cl,2
         mov ax,data
         mov ds,ax
         mov si,0
         call show_str

         mov ax,4c00h
         int 21h
  show_str: mov ax,0B800h
            mov es,ax
            sub dh,1
            mov ah,0
            mov al,0a0h
            mul dh
            mov bx,ax
            mov ah,0
            mov al,2
            sub dl,1
            mul dl
            add bx,ax
            mov di,0
            mov al,cl
       sss: mov ch,0
            mov cl,ds:[si]
            jcxz s
            mov es:[bx+di],cl
            add si,1
            mov es:[bx+di+01h],al
            add di,2
            jmp short sss
         s: ret
code ends
end start
